Skip to content

feat: Add Python 3.14 support#616

Closed
laughingman7743 wants to merge 2 commits intomasterfrom
add-python-3.14-support
Closed

feat: Add Python 3.14 support#616
laughingman7743 wants to merge 2 commits intomasterfrom
add-python-3.14-support

Conversation

@laughingman7743
Copy link
Member

Summary

Add official support for Python 3.14, which was released on October 7, 2025.

Changes

  • ✅ Add "Programming Language :: Python :: 3.14" classifier to pyproject.toml
  • ✅ Add py314 to tox envlist
  • ✅ Add 3.14: py314 to gh-actions mapping in tox config
  • ✅ Add '3.14' to test matrix in .github/workflows/test.yaml

Python 3.14 Major Features

Python 3.14 includes several significant improvements:

  • Free-threaded Python official support (PEP 779)
  • Deferred evaluation of annotations (PEP 649)
  • Template string literals (t-strings) (PEP 750)
  • Multiple interpreters in the standard library (PEP 734)
  • Experimental JIT compiler included in official binaries

Testing Notes

No workaround needed: Unlike Python 3.13, Python 3.14 should work directly with setup-uv@v5 which has Tier 1 support for Python 3.14. The existing Python 3.13 workaround (using setup-python) is kept as-is for now.

If CI passes successfully without needing the workaround for Python 3.14, we can potentially remove the Python 3.13 workaround in a future PR.

CI Status

  • All tests pass with Python 3.14
  • No additional setup required (no workaround needed)

References

Closes #615

🤖 Generated with Claude Code

laughingman7743 and others added 2 commits October 18, 2025 16:40
Add official support for Python 3.14 (released October 7, 2025).

Changes:
- Add Python 3.14 classifier to pyproject.toml
- Add py314 to tox envlist and gh-actions mapping
- Add 3.14 to test matrix in GitHub Actions

Python 3.14 includes major features:
- Free-threaded Python official support (PEP 779)
- Deferred evaluation of annotations (PEP 649)
- Template string literals (PEP 750)
- Experimental JIT compiler

Note: setup-uv (v5) has Tier 1 support for Python 3.14, so no
additional workarounds should be needed (unlike Python 3.13).
Will monitor CI results to confirm.

Closes #615

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Add the same workaround used for Python 3.13 to Python 3.14 to avoid
build failures with missing Python.h headers.

This workaround uses actions/setup-python@v5 in addition to setup-uv
for Python 3.14 to ensure proper Python development headers are available.
@laughingman7743
Copy link
Member Author

Closing this PR as PyArrow does not yet provide Python 3.14 compatible wheels, which causes build failures when trying to compile from source.

We'll wait for PyArrow to officially support Python 3.14 before adding support to PyAthena.

See: https://status.fedoralovespython.org/wheels/
Related: astral-sh/uv#11061

@laughingman7743 laughingman7743 deleted the add-python-3.14-support branch October 18, 2025 07:52
@laughingman7743
Copy link
Member Author

Correction: The correct PyArrow Python 3.14 support issue is:

PyArrow team aims to provide full Python 3.14 support in the PyArrow 22 release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Python 3.14 support

1 participant